<?php
/**
 * Created by PhpStorm.
 * User: fei
 * Date: 2016/8/23
 * Time: 11:02
 */

namespace Admin\Controller;
use Component\AdminController;


class ZichanController extends AdminController
{
    //增加固定资产投资表基本信息
    public function append()
    {


        if (IS_POST) {
            $model = M('zichan');
            $data = $model->create();
            $res = $model->add();
            if ($res) {
                $info = $model->select();
                $this->assign("info", $info);
                $this->display("append");
                echo "<script type='text/javascript'>{alert('数据添加成功');}</script>";
                // echo "<script type='text/javascript'>alert('数据添加成功');history.back(-1);</script>";
            } else {
                echo "<script type='text/javascript'>alert('数据添加失败');history.back(-1);</script>";
            }
            return;
        }
        $this->display();
    }

    //根据用户的身份判断其所在公司，只显示其自己公司信息
    public function showlist0($mg_com){
        $model = M('zichan');
        //  $sql = "select * from sw_manager where mg_id=".$_SESSION['mg_id'];

//        $sql = "select * from gq006 where gq006.QA04==".$_COOKIE['mg_com'];
        $sql = "select * from zichan where zichan.zc_1='$mg_com'";
//print_r($sql);
        $info = $model->query($sql);
        //print_r($info);

        $this -> assign('info', $info);
        $this -> display();
    }

    //企业填报人查询某一个企业固定资产投资表的全部信息
    function showlistall($mg_com){
        //$goods = D("Cominfo");
        $goods = D();

        //拼装sql语句获得每页信息
//        $sql = "select * from gq001,gq002,gq003,gq004,gq005 ,gq006 where gq001.GQ006_ID=$GQ006_ID and gq002.GQ006_ID=$GQ006_ID
//                and gq003.GQ006_ID=$GQ006_ID and gq004.GQ006_ID=$GQ006_ID and gq005.GQ006_ID=$GQ006_ID and gq006.GQ006_ID=$GQ006_ID";
//print_r($sql);
        $sql = "select * from zichan where zichan.zc_1='$mg_com'";
        $info = $goods -> query($sql);
        //print_r($info);
        $this -> assign('info', $info);
        $this -> display();

    }

    //查询角色，查询所有固定资产投资表（采用分页形式）
    function showlist(){

        $model = D("zichan");

        //1. 获得当前记录总条数
        $total = $model -> count();
        $per = 7;
        //2. 实例化分页类对象
        $page = new \Component\Page($total, $per); //autoload
        //3. 拼装sql语句获得每页信息
        $sql = "SELECT * FROM zichan ".$page->limit;
        $info = $model -> query($sql);
        //4. 获得页码列表
        $pagelist = $page -> fpage();

        $this -> assign('info', $info);
        $this -> assign('pagelist', $pagelist);
        $this -> display();
    }
    //显示一条数据的所有信息
    public function showlist1($zichan_ID){
        $model = M('zichan');
        //  $sql = "select * from sw_manager where mg_id=".$_SESSION['mg_id'];

//        $sql = "select * from gq006 where gq006.QA04==".$_COOKIE['mg_com'];
        $sql = "select * from zichan where zichan.zichan_ID='$zichan_ID'";
//print_r($sql);
        $info = $model->query($sql);
        //print_r($info);

        $this -> assign('info', $info);
        $this -> display();
    }

    //从固定资产投资表中获得公司名称信息（以矩阵键值对形式显示）
    function getComInfo(){
        //查询全部用户的信息
        $rrinfo = D("zichan")->select(); //二维数组信息
        //array(1=>'经理',2=>'主管',3=>'总监')
        $rinfo = array();
        foreach($rrinfo as $k => $v){
            $rinfo[$v['zichan_ID']] = $v['zc_1'];//array(1=>'经理',2=>'主管')
        }
        return $rinfo;
    }

    //驳回固定资产投资表
    public function reject($zichan_ID){
        $model = M('sw_manager');
        $rinfo = $this ->getComInfo();
        //根据公司名称找到对应管理员中的用户
        $sql = "select * from sw_manager where sw_manager.mg_com='$rinfo[$zichan_ID]'";

//print_r($sql);
        $info = $model->query($sql);
        // print_r($info);
        //获取这个公司的用户id
        $mg_id=$info[0]['mg_id'];
        //print_r($mg_id);
        //根据用户id去用户权限表中获得用户相应的权限
        $data = M('mgauth');
        $sql2 = "select * from mgauth where mgauth.mgauth_mg_id='$mg_id'";
        //print_r($sql2);
        $info2 = $data->query($sql2);
        //print_r($info2);
        $mgauth_auth_ids=$info2[0]['mgauth_auth_ids'];
        $mgauth_auth_ac=$info2[0]['mgauth_auth_ac'];
        //print_r($mgauth_auth_ids);
        // print_r($mgauth_auth_ac);
        //判断，若权限中有78（修改这个权限），则不用再添加，否则在权限中添加修改这个权限
        $arr = explode(",",$mgauth_auth_ids);
        //print_r($arr);
        $isin =in_array(78, $arr);
        // print_r($isin);
        if ($isin){
            echo "<script type='text/javascript'>alert('此公司已具备修改权限！');history.back(-1);</script>";
        }else{

            $mg_auth=$mgauth_auth_ids .',78';
            $mg_ac=$mgauth_auth_ac .',Zichan-upd';

            //需要更新的数据
            $num['mgauth_auth_ids'] = $mg_auth;
            $num['mgauth_auth_ac'] = $mg_ac;
            //更新条件
            $condition['mgauth_mg_id'] = $mg_id;
            $result = $data->where($condition)->save($num);

            if($result===false){
                echo "<script type='text/javascript'>alert('驳回失败！');history.back(-1);</script>";
            }else{
                echo "<script type='text/javascript'>alert('驳回成功！');history.back(-1);</script>";
            }

        }
        
   
    }




    //企业填报人修改固定资产投资表基本情况

            function upd($zichan_ID){
                //查询被修改商品的信息并传递给模板展示
                $model = D("zichan");
                //两个逻辑：展示表单、收集表单
                if(IS_POST){
                    $model -> create();
            $rst = $model -> save();
            if($rst){
                echo "<script type='text/javascript'>alert('数据修改成功');history.back(-1);</script>";;
            } else {
                echo "<script type='text/javascript'>alert('数据修改失败');history.back(-1);</script>";
            }
        } else {
            $info = $model->find($zichan_ID); //一维数组
            //  print_r($info);
            $this -> assign('info', $info);
            $this -> display();
        }
    }
    //删除固定资产投资表
    function del($zichan_ID)
    {
        //查询被修改商品的信息并传递给模板展示
        $model = D("zichan");

        $res = $model->delete($zichan_ID);

        if ($res) {
            //echo "<script type='text/javascript'>window.onload=function(){alert('数据删除成功');}</script>";
//            $info = $model->select();
//            $this->assign("info", $info);
//            $this->display("showlist");
            echo "<script type='text/javascript'>{alert('数据删除成功');history.back(-1);}</script>";
            //$this->showlist();
            //$this->success('删除成功');

        } else {
            echo "<script type='text/javascript'>alert('数据删除失败');history.back(-1);</script>";
        }
    }
    //导出固定资产投资表表格
    public function output()
    {
//获取所需数据
        $res = M('zichan')->select();
        if (IS_POST) {
            $xlsName = "固定资产投资表";//表名
            $xlsCell = array(
                array('zc_1', '企业名称（zc_1）'),
                array('zc_2', '项目名称（zc_2）') ,
                array('zc_3', '组织机构代码（zc_3）') ,
                array('zc_4', '单位负责人（zc_4）'),

                array('zc_5', '建设地址代码（zc_5）'),
                array('zc_6', '所在省（zc_6）'),
                array('zc_7', '所在市（zc_7）'),
                array('zc_8', '所在（区）县（zc_8）'),
                array('zc_9', '所在街（村、门牌号）（zc_9）'),

                array('zc_10', '居委会（zc_10）'),
                array('zc_11', '邮编(zc_11)（千美元）'),
                array('zc_12', '电话（zc_12）'),
                array('zc_13', '分机（zc_13）'),
                array('zc_14', '电子邮箱（zc_14）'),

                array('zc_15', '传真（zc_15）'),
                array('zc_16', '传真分机（zc_16）'),
                array('zc_17', '登记注册类型（zc_17）'),
                array('zc_18', '行业类别（zc_18）'),
                array('zc_19', '隶属关系（zc_19）'),

                array('zc_20', '建设性质(zc_20)（千元）'),
                array('zc_21', '建设阶段(zc_21)（千元）'),
                array('zc_22', '开工时间（zc_22）'),
                array('zc_23', '本年全部投产时间（zc_23）'),
                array('zc_24', '控股情况（zc_24）'),

                array('zc_25', '期末项目建设状态（zc_25）'),
                array('zc_26', '城乡分组(zc_26)'),
                array('zc_27', '项目审批文号(zc_27)'),
                array('zc_28', '施工许可证号(zc_28)'),
                array('zc_29', '计划总投资（zc_29）（万元）'),

                array('zc_30', ' 其中:本年新开工项目(zc_30)（万元）'),
                array('zc_31', '自开始建设累计完成投资(zc_31)（万元）'),
                array('zc_32', '自年初累计完成投资(zc_32)（万元）'),
                array('zc_33', '其中:本月完成投资(zc_33)（万元）'),
                array('zc_34', ' 其中:住宅(zc_34)（万元）'),

                array('zc_35', ' 建筑工程(zc_35)（万元）'),
                array('zc_36', '安装工程(zc_36)（万元）'),
                array('zc_37', '设备工器具购置(zc_37)（万元）'),
                array('zc_38', '其中：购置旧设备(zc_38)（万元）'),
                array('zc_39', ' 其中:用于更新的设备(zc_39)（万元）'),

                array('zc_40', ' 其它费用(zc_40)（万元）'),
                array('zc_41', '其中:旧建筑购置费(zc_41)（万元）'),
                array('zc_42', '其中:土地购置费(zc_42)（万元）'),
                array('zc_43', '本年新增固定资产(zc_43)（万元）'),
                array('zc_44', ' 本年施工房屋面积(zc_44)（平方米）'),

                array('zc_45', '  其中：住宅(zc_45)（平方米）'),
                array('zc_46', '本年竣工房屋面积(zc_46)（平方米）'),
                array('zc_47', '  其中:住宅(zc_47)（平方米）'),
                array('zc_48', '本年竣工房屋价值(zc_48)（平方米）'),
                array('zc_49', '  其中:住宅(zc_49)（平方米）'),

                array('zc_50', ' 本年施工项目个数(zc_50)（个）'),
                array('zc_51', ' 其中:本年新开工(zc_51)（个）'),
                array('zc_52', '本年投产项目个数(zc_52)（个）'),
                array('zc_53', '规划用地面积(zc_53)（平方米）'),
                array('zc_54', ' 本年实际征用和购置土地面积(zc_54)（平方米）'),



                array('zc_55', ' 本年实际征用和购置土地成交款(zc_55)（万元）'),
                array('zc_56', '一、本年资金来源合计(zc_56)（万元）'),
                array('zc_57', '1.上年末结余资金(zc_57)（万元）'),
                array('zc_58', '2.本年资金来源小计(zc_58)（万元）'),
                array('zc_59', ' (1) 国家预算资金(zc_59)（万元）'),

                array('zc_60', ' 其中:中央预算资金(zc_60)（万元）'),
                array('zc_61', '(2)国内贷款(zc_61)（万元）'),
                array('zc_62', '(3)债券(zc_62)（万元）'),
                array('zc_63', '(4)利用外资(zc_63)（万元）'),
                array('zc_64', ' 其中:外商直接投资(zc_64)（万元）'),

                array('zc_65', ' (5)自筹资金(zc_65)（万元）'),
                array('zc_66', '其中:企事业单位自有资金(zc_66)（万元）'),
                array('zc_67', '其中:股东投入资金(zc_67)（万元）'),
                array('zc_68', ' 其中:借入资金(zc_68)（万元）'),
                array('zc_69', ' (6)其它资金来源(zc_69)（平方米）'),

                array('zc_70', ' 二、各项应付款合计(zc_70)（万元）'),
                array('zc_71', '  其中:工程款(zc_71)（万元）'),
                array('zc_72', '单位负责人(zc_72)'),
                array('zc_73', '统计负责人(zc_73)'),
                array('zc_74', ' 填报人(zc_74)）'),

                array('zc_75', ' 移动电话(zc_75)'),
                array('zc_76', '填表时间(zc_76)'),




            );
            $xlsData = array();
            foreach ($res as $key => $val) {
                array_push($xlsData, array(//这里的需要导出的内容，要注意键名跟上面的字段键名要一致
                    // 'QA04' => $val[GQ006_ID],
                    'zc_1' => $val[zc_1],
                    'zc_2' => $val[zc_2],
                    'zc_3' => $val[zc_3],
                    'zc_4' => $val[zc_4],

                    'zc_5' => $val[zc_5],
                    'zc_6' => $val[zc_6],
                    'zc_7' => $val[zc_7],
                    'zc_8' => $val[zc_8],
                    'zc_9' => $val[zc_9],

                    'zc_10' => $val[zc_10],
                    'zc_11' => $val[zc_11],
                    'zc_12' => $val[zc_12],
                    'zc_13' => $val[zc_13],
                    'zc_14' => $val[zc_14],

                    'zc_15' => $val[zc_15],
                    'zc_16' => $val[zc_16],
                    'zc_17' => $val[zc_17],
                    'zc_18' => $val[zc_18],
                    'zc_19' => $val[zc_19],

                    'zc_20' => $val[zc_20],
                    'zc_21' => $val[zc_21],
                    'zc_22' => $val[zc_22],
                    'zc_23' => $val[zc_23],
                    'zc_24' => $val[zc_24],

                    'zc_25' => $val[zc_25],
                    'zc_26' => $val[zc_26],
                    'zc_27' => $val[zc_27],
                    'zc_28' => $val[zc_28],
                    'zc_29' => $val[zc_29],

                    'zc_30' => $val[zc_30],
                    'zc_31' => $val[zc_31],
                    'zc_32' => $val[zc_32],
                    'zc_33' => $val[zc_33],
                    'zc_34' => $val[zc_34],

                    'zc_35' => $val[zc_35],
                    'zc_36' => $val[zc_36],
                    'zc_37' => $val[zc_37],
                    'zc_38' => $val[zc_38],
                    'zc_39' => $val[zc_39],

                    'zc_40' => $val[zc_40],
                    'zc_41' => $val[zc_41],
                    'zc_42' => $val[zc_42],
                    'zc_43' => $val[zc_43],
                    'zc_44' => $val[zc_44],

                    'zc_45' => $val[zc_45],
                    'zc_46' => $val[zc_46],
                    'zc_47' => $val[zc_47],
                    'zc_48' => $val[zc_48],
                    'zc_49' => $val[zc_49],

                    'zc_50' => $val[zc_50],
                    'zc_51' => $val[zc_51],
                    'zc_52' => $val[zc_52],
                    'zc_53' => $val[zc_53],
                    'zc_54' => $val[zc_54],

                    'zc_55' => $val[zc_55],
                    'zc_56' => $val[zc_56],
                    'zc_57' => $val[zc_57],
                    'zc_58' => $val[zc_58],
                    'zc_59' => $val[zc_59],

                    'zc_60' => $val[zc_60],
                    'zc_61' => $val[zc_61],
                    'zc_62' => $val[zc_62],
                    'zc_63' => $val[zc_63],
                    'zc_64' => $val[zc_64],

                    'zc_65' => $val[zc_65],
                    'zc_66' => $val[zc_66],
                    'zc_67' => $val[zc_67],
                    'zc_68' => $val[zc_68],
                    'zc_69' => $val[zc_69],


                    'zc_70' => $val[zc_70],
                    'zc_71' => $val[zc_71],
                    'zc_72' => $val[zc_72],
                    'zc_73' => $val[zc_73],
                    'zc_74' => $val[zc_74],

                    'zc_75' => $val[zc_75],
                    'zc_76' => $val[zc_76],








                ));
            }

            exportExcel($xlsName, $xlsCell, $xlsData);//这里就是调用写在function里的函数了。
        }
        die();
    }




}